#ifndef __MEVALUATION__
#define __MEVALUATION__

@class MDisplayPacket, MEvaluator, MExpr, MPacket;

@interface MEvaluation : NSObject
{
@protected
	MEvaluator* _evaluator;
	MExpr* _expr;
	MExpr* _result;
	NSMutableArray* _packets;
	NSString* _inputName;
}

- (id) initWithEvaluator: (MEvaluator*) evaluator expr: (MExpr*) expr;
- (void) dealloc;

- (MEvaluator*) evaluator;
- (MExpr*) expr;
- (MExpr*) result;
- (void) setResult: (MExpr*) result;
- (NSString*) inputName;
- (void) setInputName: (NSString*) inputName;

- (void) addPacket: (MPacket*) packet;
- (MDisplayPacket*) currentDisplayPacketCreating: (BOOL) creating;

@end

#endif /* __MEVALUATION__ */
